In railroad and mass and/or rapid transit systems, it is common practice to convey the appropriate speed control signals from the wayside to the rails and, in turn, to the lead vehicle via inductive pickup coils. The frequency range of the speed signals normally consists of one (1) to thirty (30) hertz, with the progressively higher frequencies representing and signifying progressively higher speed commands. Accordingly, it is a safety requirement that under no circumstance should a failure result in a higher frequency than the frequency of the last authorized coded signal. Since the frequency range is so low, it is advantageous to generate the coded signals with relaxation oscillators; for example, ones employing unijunction transistors, in order to minimize the size and cost. Normally, in a standard unijunction transistor oscillator, the power is applied across the two base electrodes through several hundred ohm resistors, and to the emitter electrode through a resistor for charging a capacitor. When the voltage of the emitter electrode reaches a certain potential, which is determined internally in a standard unijunction transistor and externally in a programmable unijunction transistor, the unijunction transistor is forward-biased and rendered conductive. The firing of the unijunction transistor causes the capacitor to discharge rapidly, and results in a narrow pulse to be developed across each of the base electrode resistors. The cycle is then repeated, and the pulse rate determines the frequency of the output signals. The output pulses may be used to operate a flip-flop circuit. It will be appreciated that if a defect causes the normal firing voltage of the unijunction transistor to be reduced, or if leakage current flows into the charging capacitor, either from an internal fault within the unijunction transistor or from other sources common to the charging resistor, the frequency of the output pulses is inadvertently and unsafely increased. While this unsafe condition is detectable if the unijunction transistor code generator is checked often enough, but if the checking is in an unsafe direction--in some cases--the increase in the frequency of the coded pulses may go undetected.